package ec.edu.ucacue.siop.proceso.iniciar.lectores;

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;

public class LectorTablaRelacionVar {

	private List<ContenedorRelacion> listaRelaciones = new ArrayList<ContenedorRelacion>();
	private int filInicio;
	private int filFinal;
	private String error;
	public List<ContenedorRelacion> getListaRelaciones() {
		return listaRelaciones;
	}
	public void setListaRelaciones(List<ContenedorRelacion> listaRelaciones) {
		this.listaRelaciones = listaRelaciones;
	}
	public int getFilInicio() {
		return filInicio;
	}
	public void setFilInicio(int filInicio) {
		this.filInicio = filInicio;
	}
	public int getFilFinal() {
		return filFinal;
	}
	public void setFilFinal(int filFinal) {
		this.filFinal = filFinal;
	}
	public String getError() {
		return error;
	}
	public void setError(String error) {
		this.error = error;
	}
	
	public boolean leer(String nomArchivo) {
		File archivo = new File(nomArchivo);
		try {
			Workbook excel = Workbook.getWorkbook(archivo);
			
			Sheet hoja = excel.getSheet(0);
			
			filInicio = Integer.parseInt(hoja.getCell(0, 0).getContents());
			filFinal = Integer.parseInt(hoja.getCell(1, 0).getContents());
			for(int i=1; i<hoja.getRows();i++){
				ContenedorRelacion relacion = new ContenedorRelacion();
				relacion.setTipoVar(Integer.parseInt(hoja.getCell(3, i).getContents()));
				relacion.setIdVar(Long.parseLong(hoja.getCell(4, i).getContents()));
				listaRelaciones.add(relacion);
			}
			
		} catch (BiffException e) {
			error = "error en archivo excel";
			e.printStackTrace();
			return false;
		} catch (IOException e) {
			error = "Error en entrada salida";
			e.printStackTrace();
			return false;
		}
		
		return true;
	}
	
}
